This invention relates to a storage system having a snapshot function, and more particularly to a technique for transferring data of a snapshot.
In an information society, one important role of a storage system that accumulates information is protecting data. The most common method of protecting data is a backup that saves a duplicate of data in a storage to a backup medium such as a tape. With the backup, even when the data in the storage is lost due to failure, a fault, an operational error, or the like, the data can be recovered based on the backup, thereby enabling recovery of the data at the time when saved and suppressing damage to a minimum.
However, as storage capacities expand, the amount of time necessary to make backups becomes a problem. Moreover, in applications that require frequent updating of data, even if the backup is made once, difference vis-a-vis the backup expand quickly. In the event of an accident, the damage may be great. Thus, backups must be made more frequently. Furthermore, in order to prepare for a case where a file is lost due to an operational error, or a case where one wants to compare file contents with a previous state, and other such cases, there is a desire to enable regular backups to be referenced easily.
As a function of handling these types of applications, a snapshot function has been receiving attention. The snapshot function is a function which maintains a data image in the storage currently being used at the moment when the snapshot is taken, and also enables access by means other than the storage currently being used. At the moment when the snapshot is obtained, the snapshot can be used without waiting for completion of all the data in the storage to be copied, thus minimizing the backup time which was a problem in making tape backups.
In order to maintain the snapshot, there is a method of using a saving storage area to save the data at the time when the snapshot is obtained (refer to U.S. Pat. No. 5,649,152).
According to this technique, once the snapshot of an operating volume is obtained, each time when an update subsequently occurs at a block that has not yet been updated, the old data in that block is copied to the saving storage area, and a virtual volume for providing the snapshot is also generated. When reading from the virtual volume, if the block at the address to be read has been copied to the saving storage area, that block is returned. If there is no copy in the saving storage area, then no update has occurred in the operating volume, so that the block at the same address in the operating volume is returned.
According to this technique, as compared to the case of saving in the separate volume all the data in the operating volume at the time when the snapshot is obtained, the image of the volume at the time when the snapshot is obtained can be maintained with small storage capacities.
Furthermore, regarding migration of data stored in the storage system, in order to migrate data being accessed from the superior device (host), an extended data transfer function (XRC: Extended Remote Copy) and a peer-to-peer data transfer function (PPRC: Peer-to-peer Remote Copy) have been proposed by IBM, Inc. (refer to “Implementing ESS Copy Services on S/390”, IBM P.502.8.5 DASD migration).